home *** CD-ROM | disk | FTP | other *** search
/ Delphi Magazine Collection 2001 / Delphi Magazine Collection 20001 (2001).iso / DISKS / Issue39 / Clinic / SessionU.pas < prev   
Encoding:
Pascal/Delphi Source File  |  1998-07-14  |  1.1 KB  |  62 lines

  1. unit SessionU;
  2.  
  3. interface
  4.  
  5. uses
  6.   WinProcs, WinTypes, Messages, SysUtils, Classes, Graphics, Controls, Forms,
  7.   Dialogs, DBTables, Db, Grids, DBGrids;
  8.  
  9. type
  10.   TForm1 = class(TForm)
  11.     Table1: TTable;
  12.     DBGrid1: TDBGrid;
  13.     DataSource1: TDataSource;
  14.     procedure FormCreate(Sender: TObject);
  15.   private
  16.     { Private declarations }
  17.   public
  18.     { Public declarations }
  19.   end;
  20.  
  21. var
  22.   Form1: TForm1;
  23.  
  24. implementation
  25.  
  26. {$R *.DFM}
  27.  
  28. uses
  29. {$ifdef Windows}
  30.   WinDOS,
  31. {$endif}
  32.   DBiProcs, DbiTypes;
  33.  
  34. function GetDOSVar(const VarName: String): String;
  35. var
  36.   CBuf: array[0..255] of Char;
  37. begin
  38. {$ifdef Windows}
  39.   Result := StrPas(GetEnvVar(StrPCopy(CBuf, VarName)))
  40. {$else}
  41.   GetEnvironmentVariable(PChar(VarName), CBuf, SizeOf(CBuf));
  42.   Result := StrPas(CBuf);
  43. {$endif}
  44. end;
  45.  
  46. procedure TForm1.FormCreate(Sender: TObject);
  47. var
  48.   Buffer: DBINAME;
  49.   Path: String;
  50. begin
  51.   Path := GetDOSVar('TEMP');
  52. {$ifdef OneWayToDoIt}
  53.   Session.NetFileDir := Path;
  54. {$else}
  55.   Check(DbiSetProp(HDbiObj(Session.Handle), sesNETFILE,
  56.     Longint(AnsiToNative(nil, Path, Buffer, SizeOf(Buffer) - 1))));
  57. {$endif}
  58.   Table1.Open;
  59. end;
  60.  
  61. end.
  62.